home *** CD-ROM | disk | FTP | other *** search
-
- SmartPrompt v1.0 Smart shell Prompt enhancement
- Documentacja
- 26 Wrzesieï, 1998
-
- Copyright (C) 1998 by Adrian Zurek. All rights reserved.
-
-
-
- TE NUDNE SPRAWY... :)
- =====================
-
- Program SmartPrompt i jego dokumentacja zostaîy napisane przeze mnie
- czyli Adriana Ûurka :)) Takûe ja posiadam prawa autorskie dotyczâce tego
- programu.
-
- Ten program to GNU - teraz naleûaîoby przedstawiê polskie tîumaczenie
- skróconego opisu licencji GNU, jednakûe nie posiadam jej a i tîumaczyê mi
- sië za bardzo tego nie chce wiëc musicie sië zadowoliê angielskâ wersjâ
- (swoja drogâ ciekawe czy to ktoô w ogole czyta :)))
-
- This program is free software; you can redistribute it and/or modify it
- under the terms of the GNU General Public License as published by the Free
- Software Foundation; either version 2 of the License, or (at your option)
- any later version.
-
- This program is distributed in the hope that it will be useful, but
- WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
- or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- for more details.
-
- You should have received a copy of the GNU General Public License along
- with this program; see the file COPYING.
- If not, write to the Free Software Foundation,
- 675 Mass Ave, Cambridge, MA 02139, USA.
-
- Do programu nie dajë ûadnej gwarancji. Uûywaj tego programu na wîasnâ
- odpowiedzialnoôê, bez wzgledu na to do czego go uûywasz. Nie zapîaciîeô za
- niego, wiëc nie oczekuj cudów.
-
-
- KONTAKT
- =======
-
- Moûesz sië skontaktowaê ze mnâ poprzez zwykîâ pocztë:
-
- Adrian Ûurek
- ul. Mieszczaïska 5/55
- 93-322 Lódú
- Polska
-
- lub poprzez e-mail piszâc na adres:
-
- adek@plukwa.pdi.net
- albo ewentualnie:
- adek@rast.lodz.pdi.net
-
- Jeôli jesteô zaznajomiony z IRCem, moûesz zîapaê mnie (nick aDEk) na
- IRCNET'cie na kanaîach #amigapl (jëzyk polski), #seasons, #amigaexotic
- (angielski).
-
-
- JAK TO DOSTAÊ
- =============
-
- Moûesz dostaê ten program ode mnie (patrz wyûej) lub przez anonimowe FTP z
- ftp://plukwa.pdi.net/PL-A-Net/util/shell
- BTW: stâd takûe moûesz ôciâgnâê inny mój program:
- AScreen (archiwa as_xx-xx.lha)
- lub prawdopodobnie z
- Aminet/util/shell (ale nie byîbym tego taki pewien :))
-
-
- WSTËP
- =====
-
- Czy czasami korzystasz z UNIXa? Jeôli tak, prawdopodobnie zauwaûyîeô ûe
- shelle *IXowe sâ bardzo dobrze zorganizowane i ich prompty mogâ byê bardzo
- îatwo zmieniane na co chcesz zmieniajâc tylko zmiennâ ôrodowiskowâ $PROMPT
- a pod AmigaOSem to nie jest takie proste: Musisz zmieniê prompta przez
- wywoîanie komendy "Prompt" z odpowiednim argumentem. To mogîo byê dobre
- kilka lat temu, ale teraz ta komenda jest za stara i ma sporo ograniczeï.
- I tutaj pojawia sië SmartPrompt. Jest on lepszy od tego co standardowy
- prompt oferuje i posiada sporo moûliwoôci:
-
- - support dla Multiusera i AmiTCP;
-
- - warunkowe ciâgi wstawiane w prompta kiedy aktualny uûytkownik jest
- rootem lub nie;
-
- - *IXowy styl wyôwietlania ôcieûek lub konwencjonalny;
-
- - dwa typy wyôwietlania ôcieûek;
-
- - to nie jest ûaden hack! przyjazny dla systemu!;
-
- - jest maîy (hmmm... chociaû mógîby byê mniejszy ;) i "pure" (jak to
- przetîumaczyc? :)) wiëc moûna go zrobiê rezydentnym!;
-
- - za darmo!;
-
- - napisany przeze mnie! (wiem ûe to jest najwaûniejsza zaleta tego
- programu dla Was ;)))
-
- Program zawiera jeszcze sporo innych moûliwoôci ale chcë Was potrzymaê
- w niepewnoôci... :)
-
-
- WYMAGANIA
- =========
-
- Kickstart 2.04 (V37), okoîo 8kB wolnej pamiëci do uruchomienia, trochë
- wiëcej na konsole shella i oczywiôcie mój AScreen (oczywiôcie ûartujë, ale
- byîoby bardzo fajnie go uûywaê ;))
- Oczywiôcie pewnie bëdziesz takûe potrzebowaî twardy dysk lub stacjë dysków
- z dyskami, monitor i klawiaturë (myôle ûe nie powinno byê raczej z tym
- problemów ale kto wie... :))
- I to wszystko! Gotowy do odpalenia!
-
-
- PRZED UÛYCIEM WSTRZÂSNÂÊ
- ========================
-
- Pierwszâ rzeczâ jakâ naleûy zrobiê (po wstrzâôniëciu oczywiôcie :) jest
- skopiowanie SmartPrompta do katalogu "C:" lub innego, nadanie mu praw do
- odczytu i uruchamiania dla wszystkich (na Multiuser'ze) i ustawienie flagi
- "p" która oznacza ûe program moûe zostaê zrobiony rezydentnym. Oczywiôcie
- wstawienie gdzieô linii "Resident C:SmartPrompt" jest jak najbardziej
- poûâdane.
- Kolejnym waûnym krokiem jest wstawienie linii "Prompt *`SmartPrompt*`"
- gdzieô w Twoim shell-startupie. To kaûe Promptowi wykonywaê go za kaûdym
- razem gdy shell ma wyôwietliê nowy prompt.
- Hmmm... Przed tâ liniâ powinieneô ustawiê zmiennâ ôrodowiskowâ $PROMPT -
- to moûe byê zmienna lokalna lub globalna. W tej zmiennej bëdzie sië
- znajdowaî ciâg mówiâcy SmartPromptowi jak wyôwietlaê Twój prompt.
- Wiëc wstaw gdzieô linië w stylu: set SPROMPT "%p{ap00}"
- Hmmm... Nadszedî odpowiedni czas na wyjaônienie wszystkich formatów jakie
- SmartPrompt rozpoznaje:
-
- %u - aktualny "userid" (root, nobody itd.) dziaîa tylko pod Multiuserem
- lub AmiTCP! na innych systemach wyôwietla 'nobody'.
- %h - hostname - nazwa Twojego komputera. Jest ona pobierana ze zmiennej
- o nazwie $hostname.
-
- %t - aktualny czas w formacie hh:mm:ss na przykîad 12:23:55.
- %d - data w formacie dd-mmm-yy na przykîad 26-Sep-98.
- %w - dzieï tygodnia, na przykîad Thursday.
-
- %% - wyôwietla znak '%'.
- %q - wyôwietla '"'.
- %b - wyôwietla '{'.
- %B - wyôwietla '}'.
-
- %R{} - jest to warunkowa komenda. Ciâg wewnâtrz "{" "}" nawiasów bëdzie
- wstawiony do prompta jeôli aktualny uûytkownik jest rootem.
- Bez Multiusera lub AmiTCP nic nie wyôwietli.
- %r{} - to samo co powyûej, z tâ róznicâ ûe wyôwietli ciâg jeôli aktualny
- uûytkownik nie jest rootem.
- Bez Mulitusera lub AmiTCP wyôwietli podany ciâg.
- UWAGA: w nawiasach mogâ sië znajdowaê takûe wszystkie formaty z wyjâtkiem
- %R{} i %r{} aby uniknâê rekursji!
-
- %p{} - to powoduje ûe SmartPrompt wyôwietli aktualnâ ôcieûkë. W "{" "}"
- nawiasach sâ dodatkowe formaty:
- a - wyôwietla aktualnâ ôcieûke w zwykîym amigowym stylu, np. "Work:tmp"
- - ustawione standardowo.
- x - wyôwietla aktualnâ ôcieûkë w *IXowym formacie, np. "/Work/tmp".
- d - zamienia nazwy "wolumenów" (jak to przetîumaczyê?) jak "Work:" lub
- "Ram Disk:" na nazwy device'ów "DH0:", "RAM:". Waûne jest to, ûe
- nawet jeôli ta litera nie zostanie podana, SmartPrompt nadal bëdzie
- zmieniaî nazwy wolumenów jeôli w nazwie bëdzie wystëpowaê spacja,
- na nazwy device'ów, wiëc "Ram Disk:" zawsze bëdzie zamieniany na
- "RAM:".
- pxx - "p" oznacza sposób w jaki SmartPrompt bëdzie wyôwietlaî aktualnâ
- ôcieûkë. Liczba po znaku "p" jest bardzo waûna i MUSI skîadaê sië
- z dwóch cyfr, np. "02". Tylko xx ostatnich skîadników scieûki
- bëdzie wyôwietlanych, wiëc jeôli aktualna ôcieûka jest postaci
- "Work:my/gfx/tmp" i podany numer to "02" zobaczysz tylko "gfx/tmp".
- Jeôli liczba jest wiëksza niû caîkowita liczba skîadników ôcieûki,
- to zostanie wyôwietlona caîa ôcieûka.
- "00" oznacza ûe zawsze bëdzie wyôwietlona caîoôê.
- Pxx - drugi styl wyôwietlania ôcieûek. Róûnica miëdzy tâ a poprzedniâ
- polega na tym, ûe liczba "xx" oznacza maksymalnâ dîugoôê ôcieûki
- jaka moûe zostaê wywietlona w caîoôci. Jeûeli dîugoôê jest wiëksza
- od podanej, zostanie ona skrócona w odpowiedni sposob. Jak wyûej,
- podana liczba musi byê dwucyfrowa.
- Przykîad: ôcieûka postaci "Work:my/gfx/tmp/outcoming" zostanie
- skrócona do "Work:///outcoming" jeûeli jej dîugoôê jest wiëksza od
- podanej. Jak moûna zauwaûyê skrót ten skîada sië z nazwy wolumenu,
- jednego slasha na kaûdy pominiëty skîadnik ôcieûki i z peînej nazwy
- ostatniego skîadnika na koniec. Ostatni skîadnik ôcieûki zawsze
- jest wyôwietlany nawet jeôli wynikowy ciâg jest dîuûszy niû podany
- limit.
-
- I to wszystko ludziki! (prawda ûe proste? :))
- Nie, to nie jest takie proste wiëc myôle ûe to jest bardzo dobry moment na
-
- PRZYKÎADY
- =========
-
- Powiedzmy ûe chcesz mieê prompt jak na *IXach, np.
- "[adek@rast:0 archives]$ "
- ze SmartPromptem to jest bardzo proste! popatrz:
- set SPROMPT "[%u@%h:$ascreen %p{xp01}]%R[#]%r{$} "
- hehe... czy nadal rozumiesz coô z tego? Zauwaû ûe ciâg "$ascreen" to nazwa
- zmiennej lokalnej z AScreena która zawiera aktualny numer okna shella. Jak
- widaê moûesz w ciâgu podawaê nazwy zmiennych ôrodowiskowych. I wîaônie
- tutaj chciaîbym zdradziê ûe podstawowym ograniczeniem tego programu jest
- to, ûe nie moûe on podaê numeru aktualnego procesu. Dlaczego? Dlatego ûe
- SmartPrompt jest wykonywany przez Prompt jako nowy proces, wiëc jego numer
- jest inny niû numer procesu shella. Ale nadal moûna go wyôwietliê: po
- prostu wstaw ciâg "$process" gdzieô w Twojej zmiennej $SPROMPT.
-
- Drugi przykîad: moûesz takûe spowodowaê ûe Twój prompt bëdzie kolorowy!
- Tylko spójrz na linië poniûej:
- set SPROMPT "[%R{*E[32m}%u%R{*E[0m}@%h:$ascreen %p{xp01}]%R[#]%r{$} "
- jest ona bardzo podobna do poprzedniego przykîadu z tâ róûnicâ, ûe
- pokazuje aktualnâ nazwë uûytkownika w kolorze czerwonym (no przynajmniej
- u mnie ;)). Oczywiôcie "*E[32m" i "*E[0m" sâ standardowymi kodami konsoli.
-
- Ufff... Moûe to nie jest zbyt duûo dla Ciebie aby juû wiedzieê co i jak
- ale po prostu kombinuj! Po prostu wstawiaj róûne kombinacje i oglâdaj
- rezultaty!
-
- UWAGA: jeôli posiadasz zainstalowany Multiuser lub/i AmiTCP, ale ich
- odpowiednie biblioteki (multiuser.library/usergroup.library) nie sâ
- wystartowane, SmartPromp t nie bëdzie w ogole wiedziaî ûe one
- istniejâ!
- Ale to nie powinno stanowiê problemu, poniewaû przewaûnie przed
- pierwszym wyôwietleniem promptu logujesz sië do systemu.
-
-
- PLANY
- =====
-
- Nie jest ich duûo, ale program ten powinien byê maîy, szybki i porëczny
-
- - zrobiê, aby byî w stanie wyôwietlaê aktualny numer procesu shella;
-
- - dodaê rozpoznawanie i wyôwietlanie katalogów domowych i assignów;
-
-
- EPILOG
- ======
-
- Na zakoïczenie chciaîbym podziëkowaê wszystkim którzy chcâ byê z naszâ
- "kochanâ" Amiga, na zîe i na dobre (zdaje sië ûe teraz mamy te "zîe" :().
- I na sam koniec specjalne, indywidualne "greetsy":
-
- Robert "rEkiN" Rëdziak - przekonaî mnie do napisania tego "czegoô" :))
- i pokazal inne, podobne programy.
- Matthias Bethke - za jego PromptPath z którego wziâîem pomysî na
- drugi styl ôcieûek.
- Krystian "Tygrys" Wîosek - dziëki któremu i specjalnie dla niego powstaîa
- polska wersja dokumentacji :)))
- wszyscy czîonkowie grupy
- sEASONS - eee... oni i tak nie znajâ polskiego :)))
-